package uk.dier.account.dao;

import java.util.List;

import uk.dier.account.dto.ProductDto;
import uk.dier.account.entity.Product;
import uk.dier.account.exception.ExceptionDao;

public interface ISProductDao {

	/**
	 * Save a new product
	 * @param newProduct
	 */
	public void saveProduct(Product newProduct) throws ExceptionDao;
	
	/**
	 * Update a product
	 * @param updateProduct
	 */
	public void updateProduct(Product updateProduct) throws ExceptionDao;
	
	/**
	 * Delete a product
	 * @param removeProduct
	 */
	public void deleteProduct(Product removeProduct) throws ExceptionDao;
	
	/**
	 * Find the product that content some word in the name
	 * @param product
	 * @return A list of the ProductDto
	 */
	public List<ProductDto> findProducttByName(Product product) throws ExceptionDao;
}
